from aps.models.usuario import *
from flask import session, redirect, url_for,render_template, jsonify
from flask import request, flash
from aps import app 

@app.route('/index')
def index():
    if 'logged_in'in session:
        return render_template('main.html')
    return render_template('login.html')

@app.route('/login', methods=['GET', 'POST'])
def login():
    """
    Muestra el login
    @param request: objeto que encapsula la peticion del cliente   
    """
    if request.method == 'POST':
        try: 
            usuario_login =bdsession.query(Usuario).filter_by(nick = request.form['usuario']).one()
        except :
            print "hola"
            return jsonify({ 'success': False})
            pass
        if usuario_login is None:
            return jsonify({ 'success': False, 'message' : 'Fallo el login, verifique el nombre de usuario y contrase&ntilde;a'})
        if request.form['usuario'] != usuario_login.nick:
            return jsonify({ 'success': False})
        elif request.form['password'] != usuario_login.password:
            return jsonify({ 'success': False})
        else:
            session['logged_in']=True
            session['usuario']=usuario_login.nick
            session['idusuario']=usuario_login.id
            return jsonify({'success':True, 'message' : 'Login exitoso!'})
    return render_template('login.html')

@app.route('/logout')
def logout():
    """ Funcion que finaliza una sesion  """
    session.pop('logged_in', None)
    session.pop('usuario', None)
    session.pop('idusuario', None)
    return redirect(url_for('login'))